package com.dc.designPattern._14_visitor.impl;

/**
 * Description: 访问者模式_访问者接口
 *
 *  - Visitor：
 *  接口或者抽象类，定义了对每个 Element 访问的行为，它的参数就是被访问的元素，它的方法个数理论上与元素的个数是一样的，
 *  因此，访问者模式要求元素的类型要稳定，如果经常添加、移除元素类，必然会导致频繁地修改 Visitor 接口，如果出现这种情况，则说明不适合使用访问者模式。
 *
 *
 * @author: gdc
 * @date: 2021/5/13
 * @version 1.0
 */
public interface Visitor {

    /**
     * 访问工程师类型
     * @param engineer          工程师
     */
    void visit(Engineer engineer);

    /**
     * 访问经理类型
     * @param manager           经理
     */
    void visit(Manager manager);
}
